package com.thermal.thermal_inspection.mapper;

import com.thermal.thermal_inspection.entity.User;
import com.thermal.thermal_inspection.vo.LoginRespVO;
import com.thermal.thermal_inspection.vo.UserInfoVO;
import org.apache.ibatis.annotations.Mapper;
import org.springframework.stereotype.Repository;

@Repository
@Mapper
public interface UserMapper {
    /**
     * 查找用户是否存在
     */
    User existUser(String username, String password);

    /**
     * 通过username查找用户id
     */
    int getUserIdByUsername(String username);

    /**
     * 通过username查找user
     */
    User getUserByUsername(String username);

    /**
     * 注册新用户
     */
    int register(String username, String password, String email, int role);

    /**
     * 删除工人
     */
    int deleteUser(int userId);

    /**
     * 通过userId获取User
     */
    User getUserByUserId(int userId);

    /**
     * 修改信息
     */
    int fix(int userId, String username, String email, int role);

    /**
     * 查看个人信息
     */
    UserInfoVO getUserInfoByUserId(int userId);

    /**
     * 获取登录信息
     */
    LoginRespVO getLoginRespVO(String username);

    /**
     * 通过id获取role
     */
    int getRoleById(int userId);

    /**
     * 修改密码
     */
    int fixPassword(int userId, String newPassword);


}
